/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.general.update;

/**
 *
 * @author avbravo
 */
import org.mybeans.Sesion;
import java.io.File;
import java.io.FileOutputStream;
import javax.swing.JOptionPane;
import org.jdom.*;
import org.jdom.output.*;

public class XMLCrearArchivoReportes {

    Sesion sesion;

    public XMLCrearArchivoReportes() {
        sesion = new Sesion();
    }

    //  public static void main(String[] args) {
    public void Crear(String nombrearchivoxml) {

        //Creamos un elemento root
        Element root = new Element("reportes");

        File dir = new File("/home/avbravo/NetBeansProjects/ingresos/Reportes/src/ingresos/report/templates");
        String[] ficheros = dir.list();
        
        if (ficheros == null) {
            JOptionPane.showMessageDialog(null, "No hay reportes en la carpeta\n./home/avbravo/NetBeansProjects/ingresos/Reportes/src/ingresos/report/templates\nDebe colocar los reportes en ese directorio.", "Advertencia", JOptionPane.WARNING_MESSAGE);
            return;
        }
        for (int i = 0; i < ficheros.length; i++) {
            //String elem = "reportes" + String.valueOf(i);
            String elem ="archivo";
            Element elemento = new Element(elem);
            Element velemento = new Element("nombre").setText(ficheros[i]);
            elemento.addContent(velemento);
            root.addContent(elemento);
        }
        //Creamos un hijo para el root




        //Fíjate bien en como podemos enlazar 2 hijos de una forma mas compacta



        Document doc = new Document(root);//Creamos el documento

        //Vamos a almacenarlo en un fichero y ademas lo sacaremos por pantalla
        try {
            XMLOutputter out = new XMLOutputter();

            FileOutputStream file = new FileOutputStream(nombrearchivoxml);
            out.output(doc, file);
            file.flush();
            file.close();
        // out.output(doc, System.out);
        } catch (Exception ex) {
            if (ex.getMessage() == null) {
                JOptionPane.showMessageDialog(null, "Clase:XMLCrearArchivoReportes.java\nMetodo:\nCrear()\nSugerencia elimine los archivos .xml\nEnvie un email al desarrollador \navbravo@gmail.com", "Error", JOptionPane.ERROR_MESSAGE);

            } else {
                JOptionPane.showMessageDialog(null, "Clase:XMLCrearArchivoReportes.java\nMetodo:Crear())\nError: " + ex.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
            }

        }
    }
}
